/*
Copyright [2020] [https://www.xiaonuo.vip]

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

  http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Snowy采用APACHE LICENSE 2.0开源协议，您在使用过程中，需要注意以下几点：

1.请不要删除和修改根目录下的LICENSE文件。
2.请不要删除和修改Snowy源码头部的版权声明。
3.请保留源码和相关描述文件的项目出处，作者声明等。
4.分发源码时候，请注明软件出处 https://gitee.com/xiaonuobase/snowy
5.在修改包名，模块名称，项目代码等时，请注明软件出处 https://gitee.com/xiaonuobase/snowy
6.若您的项目无法满足以上几点，可申请商业授权，获取Snowy商业授权许可，请在官网购买授权，地址为 https://www.xiaonuo.vip
 */
package vip.xiaonuo.modular.xjbweekly.param;

import lombok.Data;
import vip.xiaonuo.core.pojo.base.param.BaseParam;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * 周报汇总表参数类
 *
 * @author zhangping
 * @date 2022-03-11 10:48:51
 */
@Data
public class XjbWeeklyParam extends BaseParam {

    /**
     * 自增序列
     */
    @NotNull(message = "自增序列不能为空，请检查id参数", groups = {edit.class, delete.class, detail.class})
    private Long id;

    /**
     * 组织机构
     */
    @NotBlank(message = "组织机构不能为空，请检查orgs参数", groups = {add.class, edit.class})
    private String orgs;

    /**
     * 任务编号
     */
    @NotBlank(message = "任务编号不能为空，请检查taskcode参数", groups = {add.class, edit.class})
    private String taskcode;

    /**
     * 任务类型
     */
    @NotBlank(message = "任务类型不能为空，请检查type参数", groups = {add.class, edit.class})
    private String type;

    /**
     * 任务子类型
     */
    // @NotBlank(message = "任务子类型不能为空，请检查type2参数", groups = {add.class, edit.class})
    private String type2;

    /**
     * 任务名称
     */
    @NotBlank(message = "任务名称不能为空，请检查title参数", groups = {add.class, edit.class})
    private String title;

    /**
     * 任务明细
     */
    private String content;

    /**
     * 参与人员
     */
    @NotBlank(message = "参与人员不能为空，请检查manager参数", groups = {add.class, edit.class})
    private String manager;

    /**
     * 关联系统
     */
    @NotBlank(message = "关联系统不能为空，请检查sysids参数", groups = {add.class, edit.class})
    private String sysids;

    /**
     * 开始日期
     */
    @NotNull(message = "开始日期不能为空，请检查startdate参数", groups = {add.class, edit.class})
    private String startdate;

    /**
     * 结束日期
     */
    @NotNull(message = "结束日期不能为空，请检查enddate参数", groups = {add.class, edit.class})
    private String enddate;

    /**
     * 目前阶段
     */
    @NotBlank(message = "目前阶段不能为空，请检查stage参数", groups = {add.class, edit.class})
    private String stage;

    /**
     * 任务整体进度
     */
    @NotBlank(message = "任务整体进度不能为空，请检查process参数", groups = {add.class, edit.class})
    private String process;

    /**
     * 上线日期
     */
    @NotBlank(message = "上线日期不能为空，请检查product参数", groups = {add.class, edit.class})
    private String product;

    /**
     * 关联任务
     */
    private String ref;

    /**
     * 有效性
     */
    @NotBlank(message = "有效性不能为空，请检查vflag参数", groups = {add.class, edit.class})
    private String vflag;

    /**
     * 备注
     */
    private String note;

    /**
     * 其他信息
     */
    private String others;

    /**
     * 是否关闭
     */
    @NotBlank(message = "是否关闭不能为空，请检查complate参数", groups = {add.class, edit.class})
    private String complate;

    /**
     * 导出类型
     */
    private String exportType;

    /**
     * 导出分组
     */
    private String exportGroup;
}
